package cn.wolfcode.crm.mapper;

import cn.wolfcode.crm.domain.Attendance;
import cn.wolfcode.crm.query.AttendanceQueryObject;
import cn.wolfcode.crm.query.QueryObject;
import org.apache.ibatis.annotations.Param;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

public interface AttendanceMapper {
    int deleteByPrimaryKey(Long id);

    int insert(Attendance record);

    Attendance selectByPrimaryKey(Long id);

    List<Attendance> selectAll();

    int updateByPrimaryKey(Attendance record);

    int queryForCount(AttendanceQueryObject qo);

    List<Attendance> queryForList(AttendanceQueryObject qo);

    void updateSignUp(Attendance attendance);

    Attendance selectByEmployeeIdAndNewDate(@Param("employeeId") Long employeeId, @Param("newDate") String newDate);

    void updateOnState(Attendance attendance);

    void inserSignUp(Attendance attendance);
}